FRDM-KL82Z

The FRDM-KL82Z is a low cost development platform for Kinetis® KL82, KL81, and KL80 MCUs.

Overview

The FRDM-KL82ZF has been designed by NXP in collaboration with Mbed for prototyping all sorts of devices, especially those requiring the size and price point offered by Cortex-M0+. The board is well sized for low-power applications, thanks to its power efficient Kinetis KL82Z MCU featuring an ARM® Cortex®-M0+ core running up to 96MHz and embedding 128KB Flash, 96KB RAM. Features on FRDM-KL82Z include but not limited to QSPI flash, dual-role USB, accelerometer/magnetometer and headers for use with Bluetooth® and 2.4 GHz radio add-on modules. The Kinetis KL82Z MCU family remains fully software, hardware and development tool compatibility with other Kinetis MCU and Freedom board families. It is packaged as a development board including extension headers compatible with Arduino R3 shields and includes a built-in USB Debug and Flash Programmer.


Important Notes

Support for the following features of FRDM-KL82Z are currently in development in Mbed OS. Schedule for release is TBD.

  • QuadSPI
  • USB Device
  • Hardware cryptographic accelerators

Signal Connection Information:

  • A0 does not support AnalogIn functionality
  • PWM does not support periods of 100 ms
  • A5 does not support AnalogOut functionality (Use neighboring DAC0_OUT pin instead)


MCU Features

  • Kinetis MKL82Z128VLK7 in 80 LQFP package
  • Performance
    • 72 MHz ARM® Cortex®-M0+ core (up to 96 MHz for highspeed run)
  • Memory and memory expansion
    • 128 KB program flash memory
    • 96 KB RAM
    • 32 KB ROM with built-in boot loader
    • 32 B backup register
    • QSPI to expand program code in external high-speed serial NOR flash memory
  • System peripherals
    • Multiple low-power modes
    • Memory protection unit with multi-master protection
    • 8-channel enhanced direct memory access (eDMA) module
    • Bit manipulation engine (BME)
    • SRAM bit-banding
  • Clocks
    • 3 to 32 MHz main crystal oscillator
    • 32 kHz low power crystal oscillator
    • 48 MHz internal reference
    • 4 MHz internal reference
    • 32 kHz internal reference
    • 1 kHz internal reference
  • Analog modules
    • 1x 16-bit ADC
    • 1x 12-bit DAC
    • 1x Analog comparators
    • Voltage reference 1.2 V
  • Communication interfaces
    • 1x USB full-speed OTG
    • 1x I2S module
    • 2x SPI modules
    • 2x I2C modules
    • 3x LPUART modules
    • 2x EMVSIM module
    • 1x FlexIO
  • Timers
    • 1x 4 channel-Periodic interrupt timer
    • 2x 16-bit low-power timer PWM modules
    • 1x 6-channel motor control/general purpose/PWM timers
    • 2x 2-channel quadrature decoder/general purpose timers
    • Real-time clock with independent 3.3 V power domain
    • Programmable delay block
  • Security and integrity modules
    • Hardware accelerators supporting AES, DES, 3DES, SHA, RSA and ECC (LTC)
    • Hardware CRC and true random-number generator modules
    • Multiple levels of embedded flash security
    • 128-bit unique identification number per chip
  • Human machine interface
    • Low-power hardware touch sensor interface (TSI)
    • General-purpose I/O (Up to 85)
  • Operating Characteristics
    • Main VDD Voltage and Flash write voltage range:1.71 V–3.6 V
    • Independent VDDIO for PORTE (QuadSPI): 1.71 V–3.6 V


Board Features

  • Onboard Components
    • FXOS8700CQ - Accelerometer and Magnetometer
    • 2 user push-buttons
    • RGB LED
  • Connectivity
    • Dual role USB interface with micro-B USB connector
    • up to 3x UARTs, 2x SPIs and 2x I2Cs connected to Headers (multiplexed peripherals)
  • Extensions
    • Headers compatible with Arduino R3 shields (32-pins / outter row)
    • Headers for proprietary shields (32-pins / inner row)
    • FlexIO Header compatible with OV7670 Camera
    • Optional header for add-on RF module: RF24L01+ Nordic 2.4 GHz Radio
    • Optional header for add-on Bluetooth module: JY-MCU BT Board V1.05 BT
  • Analog and Digital IOs (multiplexed peripherals)
    • 1x ADC 16-bit resolution with 12 Analog I/O Pins connected to Headers
    • up to 6x timers with 8 PWM signals accessible from Headers
    • up to 5x Comparator Inputs or 1x DAC outputs
    • up to 40 MCU I/O Pins connected to Headers (3.3v)
    • up to 2 capacitive pads connected to touch-sensing input (TSI) module
  • Board power-supply options (onboard 5 to 3.3V regulator)
    • USB Debug 5V
    • USB Target 5V
    • 5-9V Vin on Arduino headers
    • 5V PWR input
    • Coin-cell 3.3V
  • Integrated OpenSDA USB Debug and Programming adapter
    • Several industry standard Debug interfaces (PEmicro, CMSIS-DAP, JLink)
    • Drag-n-drop MSD Flash-programming
    • Virtual USB to Serial Port
  • Form factor: 3.2” x 2.1” / 81mm x 53mm
  • Software Development Tools
    • Online development tools
    • Easy to use C/C++ SDK
    • Lots of published libraries and projects
    • Alternate Offline options NXP free MCUXpresso IDE (compiler toolchain) and MCUXpresso SDK library/examples
  • Supplier website: http://www.nxp.com/frdm-kl82z


Board Block Diagram

The graphic below gives an overview of the board features and the connection between the target MCU and the on-board components and connectors
/media/uploads/Ting_Wang/block-diagram_of_frdm-kl82z.jpg


Board Pinout

Component Pinout

Following figure indicates the Kinetis KL82Z signal connections with the board components (RGB LED, Motion Sensor) and extension connectors (QSPI Flash, Camera Expansion, Bluetooth and RF headers).
/media/uploads/Ting_Wang/frdm-kl82z_peripheral.jpg

Arduino and NXP Header Pinout

Freedom board headers enable up to 64-pins and give access to most of the Kinetis KL82Z signals

  • Outer row pins deliver right signals to meet Arduino R3 standard
  • Inner row is connected to up to 32 additional Kinetis KL82Z pins
    /media/uploads/Ting_Wang/frdm-kl82z_arduino-header-pinout.jpg

Important Notes

Please note that on this MCU in SPI Slave mode pins labeled MOSI behave as Slave Output and pins labeled MISO behave as Slave Input. The terms MOSI (Master Out Slave In) and MISO (Master In Slave Out) only apply to Master mode.

The FRDM-KL82Z is fully supported in the Mbed platform, so it gets access to the free tools and SDK that provides experienced embedded developers with powerful and productive tools for building proof-of-concepts. The pinout above shows the commonly used interfaces and their locations. Note that all the numbered pins (PT_XX) can also be used as DigitalIn and DigitalOut interfaces.


Pin names


PC Configuration

Your Mbed Microcontroller can appear on your computer as a serial port. On Mac and Linux, this will happen by default. For Windows, you need to install a driver:

Windows

See Windows-serial-configuration for full details about setting up Windows for serial communication with your mbed Microcontroller

From a host PC to communicate with Mbed you will need a terminal application. This allows the Mbed Microcontroller to print to your PC screen, and for you to send characters back to your Mbed.

  • Terminals - Using Terminal applications to communicate between the Host PC and the Mbed Micrcontroller

Some terminal programs (e.g. TeraTerm) list the available serial ports by name. However, if you do need to know the identity of the serial port so that you can attach a terminal or an application to it:

'''Windows''''''Mac''''''Linux'''
Find the identity of the COM port by opening ''Device Manager''. To do this navigate ''Start -> Control Panel -> System -> Hardware -> Device Manager''.To find the device name under Mac OS X, use the command ''ls /dev/tty.usbmodem*''To find the device name under Linux, use the command ''ls /dev/ttyACM*''
windowsmaclinux


Firmware Update

FirmwareUpdate

A new interface firmware image is necessary to Mbed-Enable NXP FRDM boards

For FRDM-KL82Z, at the following link, choose CMSIS-DAP firmware that is compatible with OpenSDA v2 bootloader.

Quick Summary: hold down the reset button, plug in the usb cable to the OpenSDA usb connection, copy the new interface firmware to the enumerated drive, done!


Get Started with Mbed



First board connection

Use the USB lead to connect your Mbed to a PC. The status light will come on, indicating it has power. After a few seconds of activity, the PC will recognize the Mbed Microcontroller as a standard USB drive.

/media/uploads/Ting_Wang/frdm-kl82z_v2__cmsis-dap-windows7.jpg/media/uploads/Ting_Wang/frdm-kl82z_v2__cmsis-dap-mac.jpg
Windows 7 exampleMac OS X example


Flash a project binary

1. Download a (.bin) to the FRDM Platform

Download the appropriate "Hello World!" binary:

Note: the source code for this program will be seen in the next section.

Save the program binary file to your Mbed Microcontroller Disk, just like you would with a normal USB disk. The Status LED will flash as the PC writes the file to the Microcontroller disk.

/media/uploads/Ting_Wang/frdm-kl82z_flashing-app.jpg

2. Press the Reset Button

When the Reset Button in pressed, the newest program on the Mbed Microcontroller Disk will be loaded in to the Microcontroller FLASH memory. The Status LED will flash as this happens.

When the program is has been loaded onto the microcontroller, it will then start it running.

3. Run Hello World!

The Microcontroller is now running the program; flashing LED1 forever! If you reset the Microcontroller, or disconnect and reconnect the power, the program will simply restart.

4. Flash a new precompiled program

It is the newest program on the Mbed Microcontroller that is run after reset. We can therefore download a new program or overwrite an existing one to update the program that will run.


Open existing Project

1. Import the Program to your Mbed compiler

Select Import As Program
Choose Import Name of your preference
Click on Import

[Repository '/teams/mbed-os-examples/code/mbed-os-example-blinky/' not found]

2. Compile the Program

In the right panel Program Workspace Select the program you want to compile
Click on Compile in toolbar
If compilation ends successfully, you should see the comment Success! displayed in the Compile Output window available in the bottom and your web browser should download automatically the precompiled binary for the program.

3. Download a (.bin) to the FRDM Platform

Save the program binary file to your Mbed Microcontroller Disk, just like you would with a normal USB disk. The Status LED will flash as the PC writes the file to the Microcontroller disk.

4. Press the Reset Button

When the Reset Button in pressed, the newest program on the Mbed Microcontroller Disk will be loaded in to the Microcontroller FLASH memory. The Status LED will flash as this happens.

When the program is has been loaded onto the microcontroller, it will then start it running.

5. Run the Program

The Microcontroller is now running the program; flashing LED1 forever! If you reset the Microcontroller, or disconnect and reconnect the power, the program will simply restart.

Program Examples

Congratulation, you have successfully compiled your first project example, you will find more program examples for the FRDM-KL82Z board available on the right panel of this page or at the NXP code repositories


Create new Project

Follow the guide to creating your own programs using the online compiler


Technical Doc

FRDM-KL82Z Board

Kinetis KL82Z MCU

FXOS8700 Motion Sensor

MX25L12845GZNI - Serial Multi I/O Flash


Where to buy

Online Distribution

You need to log in to post a discussion